import logging
import threading

# 创建一个线程本地存储对象
thread_local = threading.local()


class UserFilter(logging.Filter):
    """
    自定义日志过滤器，确保每条日志记录都有 'user' 字段。
    如果未提供 'user'，则默认设置为 'Anonymous'。
    """
    def filter(self, record):
        record.user = getattr(thread_local, 'user', 'Anonymous')
        return True
